Bedingungen
Abhängig vom Wert eines Datenfeldes können Sie andere Platzhalter, Abschnitte der aktuellen Zeile oder die gesamte Zeile vom Druck ausschliessen. Über den Schalter oder [Alt] + [B] öffnen Sie das Dialogfenster zum Festlegen von Bedingungen.
Datenfeld - Im oberen Eingabefeld können Sie mit dem Schalter einen Datenplatzhalter einfügen oder per Hand eine Formel eintragen.
Vergleich - Legen Sie im Optionsfeld Vergleich den Vergleichsoperator fest.
Konstante - Geben Sie im Eingabefeld Konstante den Wert ein, mit dem das Datenfeld verglichen werden soll.
Beachten Sie bitte, dass ein an dieser Stelle per Hand eingegebener Datenplatzhalter in geschweifte Klammern gesetzt werden muss. Bei logischen Datenfeldern (Boolean) können Sie als Konstante die Werte WAHR oder FALSCH bzw. true oder false verwenden. Eine Sonderstellung nehmen Datenfelder vom Typ Grafik ein. Hier kann nur überprüft werden, ob ein Bild vorhanden ist oder nicht. Der Wert der Konstanten wird ignoriert und wie nicht vorhanden interpretiert. Soll etwas gelöscht werden, wenn kein Bild vorhanden ist, nehmen Sie ”=” als Vergleichsoperation.
Wirkung - Die vorhandenen Optionsfelder legen fest, was passieren soll, wenn beim Drucken der Vergleich richtig ist.
Aktuelle Zeile löschen - Ist dieses Feld aktiv und die Bedingung tritt ein, dann wird die aktuelle Zeile gelöscht.
Rest der Zeile löschen - Ist dieses Feld aktiv und die Bedingung tritt ein, dann wird der Rest der aktuellen Zeile gelöscht.
Folgenden Platzhalter löschen - Ist dieses Feld aktiv und die Bedingung tritt ein, dann wird der nachfolgende Platzhalter gelöscht.
Bis zur nächsten Bedingung löschen - Ist dieses Feld aktiv und die Bedingung tritt ein, dann wird bis zur nächsten Bedingung gelöscht.
Verkettung von Bedingungen
Um eine Aktion an mehrere Bedingungen zu koppeln, können hintereinander folgende Bedingungen verknüpft werden. Die Abarbeitungsfolge ist von links nach rechts.
AND-Verknüpfung - Das Ergebnis des aktuellen Vergleiches wird mit dem Ergebnis des folgenden Bedingungsplatzhalters mit einem logischem UND verknüpft. Auch weitere Bedingungsplatzhalter können mit ihrem Nächstfolgenden verknüpft werden. Massgeblich für die Aktion ist der letzte Platzhalter.
OR-Verknüpfung - Hier gilt das Gleiche wie für die UND-Verknüpfung. Es wird aber ein logisches ODER verwendet.
Beispiele
Der Zusatz der Artikel soll im Formular mit 54 mm Abstand vom linken Rand, bei Unterartikeln von Stücklisten mit 42 mm gedruckt werden. Ist kein Zusatz vorhanden, soll die Zeile gelöscht werden.
Dazu setzen Sie eine Bedingung:
Datenfeld |
Zusatz |
|
Vergleich |
= |
|
Konstante |
nichts eintragen |
|
Wirkung |
Aktuelle Zeile löschen |
Als zweiter Platzhalter wird folgende Bedingung eingefügt:
Datenfeld |
Zeilentyp |
|
Vergleich |
= |
|
Konstante |
G |
|
Wirkung |
Folgenden Platzhalter löschen |
Danach folgt der Datenplatzhalter für Zusatz auf Position 54.
Jetzt folgt der nächste Bedingungsplatzhalter:
Datenfeld |
Zusatz |
|
Vergleich |
<> |
|
Konstante |
G |
|
Wirkung |
Folgenden Platzhalter löschen |
Zuletzt folgt der Datenplatzhalter für den Zusatz auf Position 42. Im Formulareditor stehen anschliessend folgende Platzhalter:
[D:0:{Zusatz}=] [D:2:{Zeilentyp}=G] [P:54::Zusatz] [D:2:{Zeilentyp}<>G] [P:42::Zusatz]
Blockende - Soll z.B. ein Text im Positionsbereich eines Beleges nach der letzten Position angedruckt werden, kann dafür eine Bedingung mit dem Datenfeld ”Blockende” genutzt werden. Die Bedingung und die benötigten Text- und/oder Datenplatzhalter werden dafür als letzte Zeile im Positionsbereich des Hauptblockes eingefügt:
[D:0:{Blockende}:=:false] [T:0::Dieser Text soll nur nach der letzten Position erscheinen]
Weitere Beispiele
- Datenbankfeld vom Datentyp GUID mit Prüfung auf leer, bspw.: [D:0:guid36({Vorgaenger}):=:]
- Datenbankfeld vom Datentyp DATE/DATETIME mit Prüfung auf Tagesdatum, z.B.: [D:0:{Datum}:=:{System.Datum/Uhrzeit}]